package com.longcai.cm.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.math.BigDecimal;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 * VIEW
 * </p>
 *
 * @author LBX
 * @since 2024-08-05
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("v_member_coupon_list")
@ApiModel(value = "VMemberCouponList对象", description = "VIEW")
public class VMemberCouponList implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId("id")
    private String id;

    @ApiModelProperty("用户id")
    @TableField("member_id")
    private Integer memberId;

    @ApiModelProperty("优惠券id")
    @TableField("coupons_id")
    private String couponsId;

    @ApiModelProperty("领取时间")
    @TableField("create_time")
    private String createTime;

    @ApiModelProperty("到期时间")
    @TableField("expire_time")
    private String expireTime;

    @ApiModelProperty("状态(0-未使用 1-已使用 2-已失效)")
    @TableField("status")
    private Integer status;

    @ApiModelProperty("优惠劵名称")
    @TableField("name")
    private String name;

    @ApiModelProperty("满减金额")
    @TableField("full_amount")
    private BigDecimal fullAmount;

    @ApiModelProperty("优惠金额(折扣/优惠金额)")
    @TableField("discount_amount")
    private BigDecimal discountAmount;

    @ApiModelProperty("优惠劵类型 1满减 2无门槛")
    @TableField("use_type")
    private Integer useType;

    @ApiModelProperty("有效期")
    @TableField("effective_days")
    private Integer effectiveDays;

    @ApiModelProperty("数量")
    @TableField("num")
    private Integer num;

    @ApiModelProperty("剩余数量")
    @TableField("remain_num")
    private Integer remainNum;

    @ApiModelProperty("使用说明")
    @TableField("use_desc")
    private String useDesc;

    @ApiModelProperty("来源(1团券 2会员券)")
    @TableField("source")
    private Integer source;


}
